package com.java.entity;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.NotFound;
import org.hibernate.annotations.NotFoundAction;

/**
 * 报价单产品信息
 * @author Administrator
 *
 */
@Entity
@org.hibernate.annotations.Entity(
		selectBeforeUpdate = true, 
		dynamicInsert = true, 
		dynamicUpdate = true
)
@Table(name="qlist")
public class QList implements Serializable {


	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	private Long id;
	
	/**
	 * 所属报价单
	 */
	@ManyToOne
	@JoinColumn(name="qid",referencedColumnName="id")
	@NotFound(action=NotFoundAction.IGNORE)
	private QIndex qid;
	
		
	/**
	 * 产品货号，唯一值
	 */
	@Column(length=30)
	private String productNo;


	@ManyToOne
	@NotFound(action=NotFoundAction.IGNORE)
	private Product product;
	
	@ManyToOne
	@NotFound(action=NotFoundAction.IGNORE)
	private SupplierQuotation quotation;
	
	/**
	 * 产品图片路径 
	 */
	@Column(length=200)
	private String imageUri;
	
	/**
	 * 外包装长
	 */
	@Column(nullable=true)
	private Double packL=0d;
	
	/**
	 * 外包装宽
	 */
	@Column(nullable=true)
	private Double packW=0d;
	
	/**
	 * 外包装高
	 */
	@Column(nullable=true)
	private Double packH=0d;
	
	/**
	 * FOB价格
	 */
	@Column(nullable=true)
	private Double fob = 0d;
	
	/**
	 * CNF价格
	 */
	@Column(nullable=true)
	private Double cnf = 0d;
	
	/**
	 * 立方数
	 */
	@Column(nullable=true)
	private Double cbm = 0d;
	
	/**
	 * 装箱数
	 */
	@Column(nullable=true)
	private Integer pcs = 0;
	
	/**
	 * 品质规格
	 */
	@Column(length=200)
	private String spec;
	
	/**
	 * 福州交货含税价格
	 */
	@Column(nullable=true)
	private Double price = 0d;
	
	/**
	 * 毛重
	 */
	@Column(nullable=true)
	private Double grossWeight=0d;
	
	/**
	 * 净重
	 */
	@Column(nullable=true)
	private Double netWeight=0d;
	
	/**
	 * 供货厂家
	 */
	@Column(length=200)
	private String supplier;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public QIndex getQid() {
		return qid;
	}

	public void setQid(QIndex qid) {
		this.qid = qid;
	}

	public String getImageUri() {
		return imageUri;
	}

	public void setImageUri(String imageUri) {
		this.imageUri = imageUri;
	}

	public Double getPackL() {
		return packL;
	}

	public void setPackL(Double packL) {
		this.packL = packL;
	}

	public Double getPackW() {
		return packW;
	}

	public void setPackW(Double packW) {
		this.packW = packW;
	}

	public Double getPackH() {
		return packH;
	}

	public void setPackH(Double packH) {
		this.packH = packH;
	}

	public Double getFob() {
		return fob;
	}

	public void setFob(Double fob) {
		this.fob = fob;
	}

	public Double getCnf() {
		return cnf;
	}

	public void setCnf(Double cnf) {
		this.cnf = cnf;
	}

	public Product getProduct() {
		return product;
	}

	public void setProduct(Product product) {
		this.product = product;
	}

	public Double getCbm() {
		return cbm;
	}

	public void setCbm(Double cbm) {
		this.cbm = cbm;
	}

	public Integer getPcs() {
		return pcs;
	}

	public void setPcs(Integer pcs) {
		this.pcs = pcs;
	}

	public String getSpec() {
		return spec;
	}

	public void setSpec(String spec) {
		this.spec = spec;
	}

	public Double getPrice() {
		return price;
	}

	public void setPrice(Double price) {
		this.price = price;
	}

	public String getSupplier() {
		return supplier;
	}

	public void setSupplier(String supplier) {
		this.supplier = supplier;
	}	public String getProductNo() {
		return productNo;
	}

	public void setProductNo(String productNo) {
		this.productNo = productNo;
	}

	public Double getGrossWeight() {
		return grossWeight;
	}

	public void setGrossWeight(Double grossWeight) {
		this.grossWeight = grossWeight;
	}

	public Double getNetWeight() {
		return netWeight;
	}

	public void setNetWeight(Double netWeight) {
		this.netWeight = netWeight;
	}

	public SupplierQuotation getQuotation() {
		return quotation;
	}

	public void setQuotation(SupplierQuotation quotation) {
		this.quotation = quotation;
	}
	
	
}
